/*
 * Copyright © 2015-2017 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package ch.app.test.qianzhiku.pojo;

import com.alibaba.fastjson.annotation.JSONField;

import java.util.Date;

/**
 * 退回件操作.
 *
 * @author zengtao
 * @since 1.0
 */
public class ReturnRecord extends AbstractRecord {
    //寄件人
    private String sender;

    //寄件人地址
    private String senderAddress;

    //三段码
    private String threeCode;

    // 快件内容
    private String expressContentCode;

    // 时效
    private String effectiveTypeCode;

    // 运输方式
    private String transportTypeCode;

    // 称入重量
    private Double weighWeight;

    // 输入重量
    private Double inputWeight;

    // 长
    private Double pkgLength;

    // 宽
    private Double pkgWidth;

    // 高
    private Double pkgHeight;

    // 体积重
    private Double volumeWeight;

    // 始发网点
    private String sourceOrgCode;

    // 目的网点
    private String desOrgCode;

    // 容器条码
    private String containerNo;

    // 线路编码
    private String lineNo;

    // 上一网点
    private String previousOrgCode;

    // 下一网点
    private String nextOrgCode;

    // 线路频次/班次
    private String lineFrequencyNo;

    // 交接类型:MOT-中心与汽运部交接相关,FLT-中心与航空部交接相关
    private String vehiclePlateNo;

    // 收入发出类型
    private String ioType;

    private String cmpFlag;

    private int pkgPcs;
    // 面单发放地
    private String billSourceOrgCode;

    // 计费重
    private Double feeWeight;

    //收入发出标示
    private String inOutFlag;

    // 发出时间
    @JSONField(format = "yyyy-MM-dd HH:mm:ss.SSS")
    private Date outTime;

    public String getSender() {
        return sender;
    }

    public void setSender(final String sender) {
        this.sender = sender;
    }

    public String getSenderAddress() {
        return senderAddress;
    }

    public void setSenderAddress(final String senderAddress) {
        this.senderAddress = senderAddress;
    }

    public String getThreeCode() {
        return threeCode;
    }

    public void setThreeCode(final String threeCode) {
        this.threeCode = threeCode;
    }

    public String getBillSourceOrgCode() {
        return billSourceOrgCode;
    }

    public void setBillSourceOrgCode(final String billSourceOrgCode) {
        this.billSourceOrgCode = billSourceOrgCode;
    }

    public Double getFeeWeight() {
        return feeWeight;
    }

    public void setFeeWeight(final Double feeWeight) {
        this.feeWeight = feeWeight;
    }

    public String getInOutFlag() {
        return inOutFlag;
    }

    public void setInOutFlag(final String inOutFlag) {
        this.inOutFlag = inOutFlag;
    }

    /**
     * @return Date
     */
    public Date getOutTime() {
        if (outTime == null) {
            return null;
        } else {
            return (Date) outTime.clone();
        }
    }

    /**
     * @param outTime outTime
     */
    public void setOutTime(final Date outTime) {
        if (outTime == null) {
            this.outTime = null;
        } else {
            this.outTime = (Date) outTime.clone();
        }
    }

    public String getExpressContentCode() {
        return expressContentCode;
    }

    public void setExpressContentCode(final String expressContentCode) {
        this.expressContentCode = expressContentCode;
    }

    public String getEffectiveTypeCode() {
        return effectiveTypeCode;
    }

    public void setEffectiveTypeCode(final String effectiveTypeCode) {
        this.effectiveTypeCode = effectiveTypeCode;
    }

    public String getTransportTypeCode() {
        return transportTypeCode;
    }

    public void setTransportTypeCode(final String transportTypeCode) {
        this.transportTypeCode = transportTypeCode;
    }

    public Double getWeighWeight() {
        return weighWeight;
    }

    public void setWeighWeight(final Double weighWeight) {
        this.weighWeight = weighWeight;
    }

    public Double getInputWeight() {
        return inputWeight;
    }

    public void setInputWeight(final Double inputWeight) {
        this.inputWeight = inputWeight;
    }

    public Double getPkgLength() {
        return pkgLength;
    }

    public void setPkgLength(final Double pkgLength) {
        this.pkgLength = pkgLength;
    }

    public Double getPkgWidth() {
        return pkgWidth;
    }

    public void setPkgWidth(final Double pkgWidth) {
        this.pkgWidth = pkgWidth;
    }

    public Double getPkgHeight() {
        return pkgHeight;
    }

    public void setPkgHeight(final Double pkgHeight) {
        this.pkgHeight = pkgHeight;
    }

    public Double getVolumeWeight() {
        return volumeWeight;
    }

    public void setVolumeWeight(final Double volumeWeight) {
        this.volumeWeight = volumeWeight;
    }

    public String getSourceOrgCode() {
        return sourceOrgCode;
    }

    public void setSourceOrgCode(final String sourceOrgCode) {
        this.sourceOrgCode = sourceOrgCode;
    }

    public String getDesOrgCode() {
        return desOrgCode;
    }

    public void setDesOrgCode(final String desOrgCode) {
        this.desOrgCode = desOrgCode;
    }

    public String getContainerNo() {
        return containerNo;
    }

    public void setContainerNo(final String containerNo) {
        this.containerNo = containerNo;
    }

    public String getLineNo() {
        return lineNo;
    }

    public void setLineNo(final String lineNo) {
        this.lineNo = lineNo;
    }

    public String getPreviousOrgCode() {
        return previousOrgCode;
    }

    public void setPreviousOrgCode(final String previousOrgCode) {
        this.previousOrgCode = previousOrgCode;
    }

    public String getNextOrgCode() {
        return nextOrgCode;
    }

    public void setNextOrgCode(final String nextOrgCode) {
        this.nextOrgCode = nextOrgCode;
    }

    public String getVehiclePlateNo() {
        return vehiclePlateNo;
    }

    public void setVehiclePlateNo(final String vehiclePlateNo) {
        this.vehiclePlateNo = vehiclePlateNo;
    }

    public String getIoType() {
        return ioType;
    }

    public void setIoType(final String ioType) {
        this.ioType = ioType;
    }

    public String getCmpFlag() {
        return cmpFlag;
    }

    public void setCmpFlag(final String cmpFlag) {
        this.cmpFlag = cmpFlag;
    }

    public int getPkgPcs() {
        return pkgPcs;
    }

    public void setPkgPcs(final int pkgPcs) {
        this.pkgPcs = pkgPcs;
    }

    public String getLineFrequencyNo() {
        return lineFrequencyNo;
    }

    public void setLineFrequencyNo(final String lineFrequencyNo) {
        this.lineFrequencyNo = lineFrequencyNo;
    }
}
